/*
 * Created on 2005-10-9
 *
 */
package com.hd123.rumba.user;

import com.hd123.rumba.exception.BusinessException;
import com.hd123.rumba.runtime.IVersionedPersistent;

/**
 * @author caili
 */
public interface IPermission extends IVersionedPersistent {

  public static final String PERMISSION_EDIT = "权限.编辑权";/* "权限.编辑"; */
  public static final String PERMISSION_VIEW = "权限.查看权";/* "权限.查看" */

  /** @deprecated */
  public static String CAPTION_CLASS = CPermission.CAPTION_CLASS;
  /** @deprecated */
  public static String CAPTION_PERMISSION = CPermission.CAPTION_PERMISSION;

  /** 代码 */
  public String getCode() throws BusinessException;

  public void setCode(String code) throws BusinessException;

  /** @deprecated */
  public static String CAPTION_CODE = CPermission.CAPTION_CODE;

  /** 名称 */
  public String getName() throws BusinessException;

  public void setName(String name) throws BusinessException;

  /** @deprecated */
  public static String CAPTION_NAME = CPermission.CAPTION_NAME;
  
  /** 所属构件包功能视图uuid */
  public String getCartFuncViewUuid() throws BusinessException;

  public void setCartFuncViewUuid(String cartUuid) throws BusinessException;
  
  /** 备注 */
  public String getRemark() throws BusinessException;

  public void setRemark(String remark) throws BusinessException;

  /** @deprecated */
  public static String CAPTION_REMARK = CPermission.CAPTION_REMARK;
  
  /** 权限提供者 */
  public PermissionProvider getProvider() throws BusinessException;
  
  public void setProvider(PermissionProvider provider) throws BusinessException;
  
  /** 字段标题。允许空，仅当属于字段权限时有效。 */
  public String getFieldCaption() throws BusinessException;
  
  public void setFieldCaption(String fieldCaption) throws BusinessException;
}
